package com.wyh.mapper.feemanagementmapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.pagehelper.Page;
import com.wyh.domain.dto.feemanagementdto.*;
import com.wyh.domain.po.feemanagementpo.Billes;
import com.wyh.domain.po.feemanagementpo.Invoicerecordes;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.List;

/**
 * 账单Mapper接口
 *
 * @author yzw
 * @date 2024-05-20
 */
@Mapper
public interface BillMapper extends BaseMapper<Billes> {

    public Page<BillsDTO> selectAllBills(@Param("account")String account, @Param("bilDTO") BilDTO billDTO);

    public Page<BillDTO> selectAllBill(@Param("account")String account, @Param("bilDTO") BilDTO billDTO);

    public List<BDTO> selectBasic(BillStatusDTO billStatusDTO);

    public List<BiDetailsDTO> selectBill(BillStatusDTO billStatusDTO);

    public List<BillDetailsDTO> selectBillDetails(BillStatusDTO billStatusDTO);

    public void updateBill(Integer id);

    public void updateLaggold();

    public void updateTotalArrears();

    public List<NoticeDTO> getAllNotice();



    int insertB(Billes billes);
    Billes findByPayee(String payee);
    Invoicerecordes getInvoicerecordByBillid(Integer billid);

    void update(Billes billes);
    List<Billes> findUnpaidBillsByCustomerId(int customerid);
}
